Mining Version Control Systems for FACs (Frequently Applied Changes)
نویسندگان
چکیده
Today, programmers are forced to maintain a software system based on their gut feeling and experience. This paper makes an attempt to turn the software maintenance craft into a more disciplined activity, by mining for frequently applied changes in a version control system. Next to some initial results, we show how this technique allows to recover and study successful maintenance strategies, adopted for the redesign of long–lived systems.
منابع مشابه
Incremental Workflow Mining for Process Flexibility
Incremental workflow mining is a technique for automatically deriving a process model from the on-going executions of a process. This way, the process model becomes more and more accurate, and is automatically adapted when the process is being changed. Therefore, incremental workflow mining could help in flexible workflow support: In this paper, we describe a setting that combines incremental w...
متن کاملEffects of Centralized and Distributed Version Control on Commit Granularity
Version control systems are critical for coordinating work in large software engineering teams. Recently, distributed version control (DVC) systems have become popular, as they have many advantages over their centralized (CVC) counterparts. DVC allows for more frequent commits, and simplifies branching and merging. These features encourage developers to make smaller, finergrained commits that d...
متن کاملAgent-Based Learning Classifier Systems for Grid Data Mining
Grid Data Mining tools must be able to cope with very large, high dimensional and, frequently heterogeneous data sets that are geographically distributed and stored in different types of repositories, produced from different devices and retrieved through different protocols. This paper presents an agent-based version of a Learning Classifier System. An experimental study was conducted in a comp...
متن کاملMining Co-Change Clusters from Version Repositories
Clusters of software artifacts that are frequently changed together are subsystem candidates, because one of the main goals of software design is to make changes local. The contribution of this paper is a visualization-based method that supports the identification of such clusters. First, we define the co-change graph as a simple but powerful model of common changes of software artifacts, and d...
متن کاملMining and untangling change genealogies
Developers change source code to add new functionality, fix bugs, or refactor their code. Many of these changes have immediate impact on quality or stability. However, some impact of changes may become evident only in the long term. This thesis makes use of change genealogy dependency graphs modeling dependencies between code changes capturing how earlier changes enable and cause later ones. Us...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2004